package com.zrwl.poscloud.base.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.zrwl.poscloud.base.superI.SuperEntity;
import lombok.Data;
import lombok.ToString;

@Data
@ToString
@TableName("t_server_sync_record")
public class ServerSyncRecord extends SuperEntity<ServerSyncRecord> {//status 0 删除 1未同步 2完成同步
    private static final long serialVersionUID = 1L;
    private String companyUid;
    private Integer type;//区分不同的业务类型与version表同含义
    private String name;
    private String serverCode;
    private String summary;
    private String jsonData;//VO体数据
}
//插入数据通过add方法（改造可进行各种object类型数据）X
//上传X
//1获取未上传的所有数据根据type和companyUid 分组 X
//2上传通道将1查到的数据上传至服务器执行对应的业务（1.常规类型根据对应数据走对应接口执行数据更新或插入（对自己本地的version进行更新）2.更新给其他服务器的数据插入表中等待下载更新对自己本地的version进行更新））X
//3上传完成后执行数据更新同步标记并且更新对应type类型的version（取最后一条业务数据的创建时间）X
//下载
//1 带着自己本地对应数据的version时间取云端数据在这个时间之后的数据(同时云端数据同步标记)X
//2 带着数据到本地执行对应的接口操作完成后更新本地的versionX

//分两个task完成
//枚举类将自己的entity类字符串保存直接调用对应的
//缺失一个server端口的typeVersion类型的初始化***